/*
 * 01开辟二级指针对应的堆空间.c
 *
 *  Created on: 2024年3月14日
 *      Author: HP
 */
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main0901(){
	// 开辟二级指针对应的堆空间
	int** p = (int**)malloc(sizeof(int*) * 5);
	for(int i=0; i<5; i++){
		// 开辟一级指针对应的堆空间
		p[i] = (int*)malloc(sizeof(int) * 3);
	}
	for(int i=0; i<5; i++){
		for(int j=0; j<3; j++){
			// 存值
			scanf("%d", &p[i][j]);
		}
	}
	for(int i=0; i<5; i++){
		for(int j=0; j<3; j++){
			// 取值
			printf("%d ", p[i][j]);
			//printf("%d ", *(p[i]+j));
			//printf("%d ", *(*(p+i)+j));
		}
		printf("\n");
	}

	for(int i=0; i<5; i++){
		free(p[i]);
	}
	free(p);
	return 0;
}
